package com.lfs.market.service;

import cn.dev33.satoken.stp.SaTokenInfo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lfs.market.model.R;
import com.lfs.market.model.dto.SystemUserCreateDto;
import com.lfs.market.model.dto.SystemUserLoginDto;
import com.lfs.market.model.dto.SystemUserPageDto;
import com.lfs.market.model.dto.SystemUserUpdateDto;
import com.lfs.market.model.entity.SystemUser;


public interface SystemUserService extends IService<SystemUser> {
    /**
     * 登录
     *
     * @param request
     * @return
     */
    SaTokenInfo login(SystemUserLoginDto request);

    R<SystemUser> getUserInfo();

    Page getUserPageList(SystemUserPageDto userPageDto);

    /**
     * 创建用户
     * @param dto
     */
    void create(SystemUserCreateDto dto);

//    void edit(SystemUserUpdateDto dto);

    /**
     * 注册
     *
     * @param request
     * @return
     */
    SaTokenInfo register(SystemUserLoginDto request);
}
